package com.zmn.oms.dubbo.interfaces.zmn.master.discount;

import com.zmn.common.dto2.ResponseDTO;
import com.zmn.oms.dubbo.dto.common.work.BaseRequestDIO;
import com.zmn.oms.dubbo.dto.common.work.UseTimesCoupDIO;
import com.zmn.oms.dubbo.dto.zmn.discount.CouponDiscountDIO;
import com.zmn.oms.dubbo.dto.zmn.discount.OrderDiscountRefreshDRO;
import io.swagger.annotations.ApiOperation;

/**
 * 类描述：工程师优惠
 * @author heciqi
 * @date 2021/10/8 15:23
 */
public interface MasterDiscountRemoteService {

	/**
	 * 工程师验券
	 * @param couponDiscountDIO
	 */
	@ApiOperation(value = "工程师验券", notes = "工程师验券")
	ResponseDTO useCoupon(CouponDiscountDIO couponDiscountDIO);

	/**
	 * 使用最新优惠（刷新获取最新优惠）
	 * @param baseRequestDIO
	 */
	@ApiOperation(value = "使用最新优惠", notes = "使用最新优惠")
	ResponseDTO useNewDiscount(BaseRequestDIO baseRequestDIO);

	/**
	 * 使用次卡优惠（
	 * @param UseTimesCoupDIO dio
	 */
	@ApiOperation(value = "使用次卡优惠", notes = "使用次卡优惠")
	ResponseDTO useTimesDiscount(UseTimesCoupDIO dio);

	/**
	 * 刷新订单优惠，并返回相关优惠信息
	 * @param dio 订单信息
	 */
	@ApiOperation(value = "使用最新优惠", notes = "使用最新优惠并返回优惠相关信息")
	ResponseDTO<OrderDiscountRefreshDRO> refreshOrderDiscount(BaseRequestDIO dio);
}
